#ifndef PLAYER_H
#define PLAYER_H

#include "Game Engine\Header\KinematicBody.h"

class Player : public KinematicBody
{
public:
	Player();
	~Player();

	void				Init( ID3D10Device* device, btDynamicsWorld* world, std::wstring meshFile,
							ID3D10Effect* fx, ID3D10ShaderResourceView* cubeMap, float mass,
							Physics::Shape shape = Cube, bool useShadows = true );

	D3DXVECTOR3&		GetPosition();
	D3DXVECTOR3&		GetVelocity();

	void				SetPosition( D3DXVECTOR3 pos );
	void				SetVelocity( D3DXVECTOR3 pos );

	void				Strafe( float d );
	void				Walk( float d );

	void				Move( float dt );
	void				Stop();

	void				Draw( D3DXMATRIX& lightViewProj );

	btPairCachingGhostObject*		GetGhostObject();
	btKinematicCharacterController*	GetCharacter();
};

#endif